package com.ffox.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.time.LocalDateTime;

/**
 * <p>
 * 群文件表
 * </p>
 *
 * @author freefox
 * @since 2025-09-01
 */
@Getter
@Setter
@ToString
@TableName("group_chat_file")
public class GroupChatFile {

    /**
     * 文件ID，主键
     */
    @TableId(value = "id", type = IdType.AUTO)
    private Long id;

    /**
     * 群组ID
     */
    @TableField("class_id")
    private Long classId;

    /**
     * 上传者用户ID
     */
    @TableField("user_num")
    private String userNum;

    /**
     * 原始文件名
     */
    @TableField("file_name")
    private String fileName;

    /**
     * 文件大小（字节）
     */
    @TableField("file_size")
    private Long fileSize;

    /**
     * 文件类型：如image/png, application/pdf等
     */
    @TableField("file_type")
    private String fileType;

    /**
     * 文件存储路径
     */
    @TableField("file_path")
    private String filePath;

    /**
     * 状态：1-正常 2-已删除
     */
    @TableField("status")
    private Byte status;

    /**
     * 上传时间
     */
    @TableField("created_at")
    private LocalDateTime createdAt;

    /**
     * 删除时间
     */
    @TableField("deleted_at")
    private LocalDateTime deletedAt;
}
